1 module derelict.sdl2.gfx.imagefilter; 2 3 import derelict.sdl2.sdl; 4 5 extern(C) @nogc nothrow 6 { 7 // MMX image filters 8 alias da_SDL_imageFilterAbsDiff = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 9 alias da_SDL_imageFilterAdd = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 10 alias da_SDL_imageFilterAddByte = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte C); 11 alias da_SDL_imageFilterAddByteToHalf = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte C); 12 alias da_SDL_imageFilterAddUint = int function(ubyte *Src1, ubyte *Dest, uint length, uint C); 13 alias da_SDL_imageFilterBinarizeUsingThreshold = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte T); 14 alias da_SDL_imageFilterBitAnd = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 15 alias da_SDL_imageFilterBitNegation = int function(ubyte *Src1, ubyte *Dest, uint length); 16 alias da_SDL_imageFilterBitOr = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 17 alias da_SDL_imageFilterClipToRange = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte Tmin, ubyte Tmax); 18 alias da_SDL_imageFilterDiv = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 19 alias da_SDL_imageFilterMMXdetect = int function(); 20 alias da_SDL_imageFilterMean = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 21 alias da_SDL_imageFilterMult = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 22 alias da_SDL_imageFilterMultByByte = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte C); 23 alias da_SDL_imageFilterMultDivby2 = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 24 alias da_SDL_imageFilterMultDivby4 = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 25 alias da_SDL_imageFilterMultNor = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 26 alias da_SDL_imageFilterNormalizeLinear = int function(ubyte *Src, ubyte *Dest, uint length, int Cmin, int Cmax, int Nmin, int Nmax); 27 alias da_SDL_imageFilterShiftLeft = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte N); 28 alias da_SDL_imageFilterShiftLeftByte = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte N); 29 alias da_SDL_imageFilterShiftLeftUint = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte N); 30 alias da_SDL_imageFilterShiftRight = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte N); 31 alias da_SDL_imageFilterShiftRightAndMultByByte = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte N, ubyte C); 32 alias da_SDL_imageFilterShiftRightUint = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte N); 33 alias da_SDL_imageFilterSub = int function(ubyte *Src1, ubyte *Src2, ubyte *Dest, uint length); 34 alias da_SDL_imageFilterSubByte = int function(ubyte *Src1, ubyte *Dest, uint length, ubyte C); 35 alias da_SDL_imageFilterSubUint = int function(ubyte *Src1, ubyte *Dest, uint length, uint C); 36 alias da_SDL_imageFilterMMXoff = void function(); 37 alias da_SDL_imageFilterMMXon = void function(); 38 } 39 40 __gshared 41 { 42 // MMX image filters 43 da_SDL_imageFilterAbsDiff SDL_imageFilterAbsDiff; 44 da_SDL_imageFilterAdd SDL_imageFilterAdd; 45 da_SDL_imageFilterAddByte SDL_imageFilterAddByte; 46 da_SDL_imageFilterAddByteToHalf SDL_imageFilterAddByteToHalf; 47 da_SDL_imageFilterAddUint SDL_imageFilterAddUint; 48 da_SDL_imageFilterBinarizeUsingThreshold SDL_imageFilterBinarizeUsingThreshold; 49 da_SDL_imageFilterBitAnd SDL_imageFilterBitAnd; 50 da_SDL_imageFilterBitNegation SDL_imageFilterBitNegation; 51 da_SDL_imageFilterBitOr SDL_imageFilterBitOr; 52 da_SDL_imageFilterClipToRange SDL_imageFilterClipToRange; 53 da_SDL_imageFilterDiv SDL_imageFilterDiv; 54 da_SDL_imageFilterMMXdetect SDL_imageFilterMMXdetect; 55 da_SDL_imageFilterMMXoff SDL_imageFilterMMXoff; 56 da_SDL_imageFilterMMXon SDL_imageFilterMMXon; 57 da_SDL_imageFilterMean SDL_imageFilterMean; 58 da_SDL_imageFilterMult SDL_imageFilterMult; 59 da_SDL_imageFilterMultByByte SDL_imageFilterMultByByte; 60 da_SDL_imageFilterMultDivby2 SDL_imageFilterMultDivby2; 61 da_SDL_imageFilterMultDivby4 SDL_imageFilterMultDivby4; 62 da_SDL_imageFilterMultNor SDL_imageFilterMultNor; 63 da_SDL_imageFilterNormalizeLinear SDL_imageFilterNormalizeLinear; 64 da_SDL_imageFilterShiftLeft SDL_imageFilterShiftLeft; 65 da_SDL_imageFilterShiftLeftByte SDL_imageFilterShiftLeftByte; 66 da_SDL_imageFilterShiftLeftUint SDL_imageFilterShiftLeftUint; 67 da_SDL_imageFilterShiftRight SDL_imageFilterShiftRight; 68 da_SDL_imageFilterShiftRightAndMultByByte SDL_imageFilterShiftRightAndMultByByte; 69 da_SDL_imageFilterShiftRightUint SDL_imageFilterShiftRightUint; 70 da_SDL_imageFilterSub SDL_imageFilterSub; 71 da_SDL_imageFilterSubByte SDL_imageFilterSubByte; 72 da_SDL_imageFilterSubUint SDL_imageFilterSubUint; 73 } 74